<?php
	/**
     *  Этот файл обновлет html файл для динамического блока количества слушателей онлайн
     */
		
		static $fail = false; // Индикатор доступности радиовещалки	        
        
        // Файл, который мы проверяем        
		$url = lire_config('radiodj/XspfLink');
        
        $text = false;
        
        // Пробуем открыть файл для чтения
        if (!$fail) {
        if (@fopen($url, "r")) {
            $text = file_get_contents($url);
        } else {
            $fail = true;
        }
        }
        
        if ($text) {
            $pattern = '/Current Listeners: (\d*)/i';
            preg_match($pattern, $text, $matches);
            if ($matches[1]) { 
                $text = intval($matches[1]);
            } else {
                $text = false;
            }    
        }        
		
		// Делаем возможной перегрузку файла динамического блока
		$filepath = find_in_path('radiodj_dynblocks/listeners_online.html');
		
        $file_text = file_get_contents($filepath);        
        if ($text) {
			$file_text = preg_replace('/<span.*class="radiodj_listeners_online".*>/sU', '<span class="radiodj_listeners_online">', $file_text);
            $pattern = '/<span class="num_listeners">[0-9]+<\/span>/s';
            $file_text = preg_replace($pattern, '<span class="num_listeners">'.$text.'</span>', 
                                      $file_text);
        } else {
			// Если нет количества пользователей, скрываем тело динамического блока
            $file_text = preg_replace('/<span.*class="radiodj_listeners_online".*>/sU', 
				'<span class="radiodj_listeners_online" style="display:none;">', $file_text);
        }
		// Время обновления из конфига (если задано)		
        //var_dump($file_text);
        file_put_contents($filepath, $file_text);
?>